#ifndef CCOPTIONSDLG_H
#define CCOPTIONSDLG_H

#include <wx/intl.h>
#include "configurationpanel.h"
#include "nativeparser.h"
#include "parser/parser.h"

class CodeCompletion;
class DocumentationHelper;

class CCOptionsDlg : public cbConfigurationPanel {
  public:
    CCOptionsDlg( wxWindow* parent, NativeParser* np, CodeCompletion* cc, DocumentationHelper* dh );
    virtual ~CCOptionsDlg();
    virtual wxString GetTitle() const { return _T( "代码补齐" ); }
    virtual wxString GetBitmapBaseName() const { return _T( "codecompletion" ); }
    virtual void OnApply();
    virtual void OnCancel() { ; }
  protected:
    void OnChooseColour( wxCommandEvent& event );
    void OnCCDelayScroll( wxScrollEvent& event );
    void OnUpdateUI( wxUpdateUIEvent& event );
  private:
    void UpdateCCDelayLabel();
    bool ValidateReplacementToken( wxString& from, wxString& to );
    NativeParser* m_NativeParser;
    CodeCompletion* m_CodeCompletion;
    ParserBase& m_Parser;
    DocumentationHelper* m_Documentation;
    DECLARE_EVENT_TABLE()
};

#endif
